1. Technical Field
The invention relates generally to a business process management system and, more specifically, to a method of dynamically calculating the duration of a business process or part of a business process.
2. Description of the Related Art
Business process management (BPM) systems have become essential to the management of complex businesses in today's economy. Management teams face an increasingly complex and challenging business environment. For example, a typical business may consist of multiple locations, business streams and informational structures. In addition, a business often must handle fluidity in market conditions and changes in accounting requirements. Business performance may involve such aspects as supply chain management, financial compliance, customer service, plant maintenance and other processes. Each of these performance aspects can benefit from operational improvement, or process optimization.
Current BPM systems that provide process optimization typically focus on execution models rather than on functional models. A functional model, or business view, focuses on what specific jobs need to be performed within a system. An execution model, or process view, focuses on how those specific jobs are performed, or executed. In current process management systems, although information is collected based upon the functional view, the reporting of the collected information is based upon the business view. This becomes an issue when a change is made in the execution model because a change often necessitates a modification to the reporting process so that that a particular report corresponds to the functional model.
Three issues in process optimization are 1) velocity, or how fast a business identifies and responds to business events; 2) visibility, or the degree to which changes create affect ongoing processes; and 3) value, or the ultimate benefit or return on investment (ROI) derived from any particular change. Changes in the execution model may require a change in the reporting model, which is based upon a functional model, and this can affect velocity, visibility and value. With regard to velocity, extra steps require extra time because many BPM systems are designed to be durable rather than flexible. With regard to visibility, an execution model change that necessitates a functional model change can disrupt an entire business process. With regard to value, anything that increases the time and disruptive aspects of a business process change affects the cost of the change and the business' ROI.
In current BPM systems, changes to an execution definition of a business process may involve the addition, removal and reordering of components that implement the process as well as the creation, deletion and renaming of data variables or fields used for reporting the process. If data needed for reporting the process is associated with existing implementation components or variables, then changes to the process to improve execution or refine the process' structure may necessitate changes to reports even though the functional definition has not changed.
For example, it is often desirable in a process reporting system to measure the time necessary for a particular process or portion of a process to complete. This task becomes complicated when the execution definition changes and, even in the absence of change, complications arise if any particular job within the business process has more than one execution path. In addition, there may be ambiguity as to which particular events should be considered the start or end of a particular timing interval. In the event of ambiguity as to starting points and ending points, there is no way for Standard Query Language (SQL) to calculate a timing interval unless the interval is periodically recalculated.